package dji.ux.ext.setting.aircraft;

import androidx.annotation.NonNull;

import dji.keysdk.FlightControllerKey;
import dji.ux.beta.base.DJISDKModel;
import dji.ux.beta.base.SchedulerProviderInterface;
import dji.ux.beta.base.WidgetModel;
import dji.ux.beta.base.uxsdkkeys.ObservableInMemoryKeyedStore;

public class AuxiliaryLightModel extends WidgetModel {
//    private SchedulerProviderInterface schedulerProvider;
//    private final DataProcessor<BottomAuxiliaryLightMode> auxiliaryLightProcessor;

    public AuxiliaryLightModel(@NonNull DJISDKModel djiSdkModel,
                               @NonNull ObservableInMemoryKeyedStore keyedStore,
                               @NonNull SchedulerProviderInterface scheduletProviderInterface) {
        super(djiSdkModel, keyedStore);
//        this.schedulerProvider = scheduletProviderInterface;
//        auxiliaryLightProcessor = DataProcessor.create(BottomAuxiliaryLightMode.UNKNOWN);
    }

//    public Flowable<BottomAuxiliaryLightMode> getBottomAuxiliaryLightMode() {
//        return auxiliaryLightProcessor.toFlowable();
//    }

//    public Completable setAuxiliaryLightMode(BottomAuxiliaryLightMode mode) {
//        DJIKey bottomAuxiliaryLightModeKey = FlightControllerKey.createFlightAssistantKey(FlightControllerKey.BOTTOM_AUXILIARY_LIGHT_MODE);
//        return djiSdkModel.setValue(bottomAuxiliaryLightModeKey, mode).subscribeOn(schedulerProvider.io());
//    }


    @Override
    protected void inSetup() {
        FlightControllerKey bottomAuxiliaryLightModeKey =
                FlightControllerKey.createFlightAssistantKey(FlightControllerKey.BOTTOM_AUXILIARY_LIGHT_MODE);
//        bindDataProcessor(bottomAuxiliaryLightModeKey, auxiliaryLightProcessor);
    }

    @Override
    protected void inCleanup() {

    }

    @Override
    protected void updateStates() {

    }
}
